package com.chenfan.mcn.model.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 红人月度结算单列表-执行单明细导出
 * @author fhlj
 */
@Data
public class StatementPerformListExportVO {

    /**
     * 结算单ID
     */
    private Long id;

    /**
     * 结算单号
     */
    @Excel(name = "结算单号")
    private String settlementCode;

    /**
     * 单据状态
     */
    @Excel(name = "单据状态", replace = {"待提交_0", "审批中_1", "待打款_2", "审批拒绝_3", "已撤回_4", "部分打款_5", "已打款_6", "已作废_9"})
    private String approvalStatus;

    /**
     * 审批实例ID
     */
    private Long flowId;

    /**
     * 审批状态
     */
    @Excel(name = "审批状态")
    private String flowStatusName;


    /**
     * 是否直播合作广告：0否1是
     */
    @Excel(name = "是否直播合作广告", replace = {"否_0","是_1"})
    private Integer isLiveAd;



    /**
     * 红人昵称
     */
    @Excel(name = "红人昵称")
    private String starNickname;

    /**
     * 结算时间
     */
    @Excel(name = "结算时间", format = "yyyy-MM")
    private Date settlementDate;

    /**
     * 是否含线下报销 0否1是
     */
    @Excel(name = "是否含线下报销", replace = {"否_0", "是_1"})
    private String isOfflineReimburse;


    /**
     * 子结算单号
     */
    @Excel(name = "子结算单号")
    private String subSettlementCode;

    /**
     * 我司签约主体ID
     */
    private Long contractingId;

    /**
     * 我司合同主体
     */
    @Excel(name = "我司合同主体")
    private String companyContractSubject;

    /**
     * 税前金额
     */
    private BigDecimal pretaxAmount;

    /**
     * 应扣税额
     */
    private BigDecimal taxableAmount;

    /**
     * 税后金额
     */
    private BigDecimal aftertaxAmount;

    /**
     * 发票号
     */
    private String invoiceNo;

    /**
     * 开票日期
     */
    private Date invoiceDate;

    /**
     * 打款日期
     */
    private Date paidDate;

    /**
     * 执行单编号
     */
    @Excel(name = "执行单编号")
    private String excuteCode;

    /**
     * 执行单状态
     */
    @Excel(name = "执行单状态")
    private String excuteOrderStatusName;

    /**
     * 收入合同编号
     */
    @Excel(name = "收入合同编号")
    private String incomeContractCode;
    /**
     * 红人平台昵称
     * 原“平台昵称”字段更名而来，挪了位置
     */
    @Excel(name = "红人平台昵称")
    private String platNickName;

    /**
     * 品牌
     */
    @Excel(name = "品牌")
    private String brandName;

    /**
     * 产品名称
     */
    @Excel(name = "产品名称")
    private String productName;

    /**
     * 发布类型
     */
    private String publishType;
    /**
     * 发布平台
     */
    @Excel(name = "发布平台")
    private String platformName;

    /**
     * 发布形式（数据字典） 取值 contract_excution_order表的publish_form
     */
    @Excel(name = "发布形式")
    private String publishForm;
    /**
     * 实际发布日期
     */
    @Excel(name = "实际发布日期")
    private Date realPublishDate;
    /**
     * 原“执行单总金额”更名而来
     * 执行单总收入(元)
     */
    @Excel(name = "执行单总收入(元)")
    private BigDecimal actualQuotedPrice;

    /**
     * 紅人分成比例（%）
     */
    @Excel(name = "红人分成比例（%）", suffix = "%")
    private BigDecimal dividedRate;

    /**
     * 内容报价返点比例（%）
     */
    @Excel(name = "内容报价返点比例（%）", suffix = "%")
    private BigDecimal aeCustomerRabateRate;

    /**
     * 内容报价返点金额
     */
    @Excel(name = "内容报价返点金额（元）", type = 10)
    private BigDecimal aeCustomerRabateAmount;

    /**
     * 实际报价
     */
    private BigDecimal realAmount;

    /**
     * 微任务金额
     */
    private BigDecimal microTaskAmount;

    /**
     * 粉丝头条金额
     */
    private BigDecimal fansHeadlineAmount;

    /**
     * 平台手续费
     */
    private BigDecimal platformFee;

    /**
     * 其他收费
     */
    private BigDecimal otherFee;

    /**
     * AE确认分成金额
     */
    private BigDecimal aeDevidedAmount;
    /**
     * 原“财务确认分成金额”更名而来
     * 财务确认分成金额(元)
     */
    @Excel(name = "财务确认分成金额(元)")
    private BigDecimal financeDevidedAmount;

    /**
     * 财务确认文建税(元)
     */
    @Excel(name = "财务确认文建税(元)")
    private BigDecimal financeCulturalTax;


    /**
     * 均摊个税
     */
    private BigDecimal shareTaxAmount;

    /**
     * 税后均摊打款金额
     */
    private BigDecimal aftertaxShareAmount;

    /**
     * 结算形式（0-线上结算，1-线下结算
     */
    private String settlementForm;

    /**
     * 备注（结算单的执行单备注）
     */
    @Excel(name = "备注")
    private String remark;

    /**
     * 执行人
     */
    @Excel(name = "执行人")
    private String excutorName;

    /**
     * 数据所有人
     */
    @Excel(name = "数据所有人")
    private String ownerName;

    /**
     * 创建人
     */
    @Excel(name = "创建人")
    private String createName;

    /**
     * 创建时间
     */
    @Excel(name = "创建时间",exportFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createDate;

    /**
     * 执行单状态
     */
    private Integer excuteOrderStatus;
    /**
     * 红人平台ID
     */
    private String starPlatformId;
    /**
     * 平台ID 数据字典
     */
    private String platformId;
}
